package com.platform.common.core.domain.export;

import com.fasterxml.jackson.annotation.JsonFormat;
import com.platform.common.core.annotation.Excel;
import lombok.Data;

import java.math.BigDecimal;
import java.util.Date;

/**
 * @Author mymac
 * @Date 2024/7/11 6:53 PM
 * @Version 1.0
 */
@Data
public class DepartGncSettlementDTO {
    @Excel(name = "付款人")
    private String settleUserName;

    @Excel(name = "应收总价",cellType = Excel.ColumnType.NUMERIC)
    private BigDecimal receivableAmount;

    @Excel(name = "实付总价",cellType = Excel.ColumnType.NUMERIC)
    private BigDecimal actualAmount;

    @Excel(name = "结算方式",readConverterExp = "NOW_PAID=现结,DAY_PAID=日结,MONTH_PAID=月结")
    private String settleWay;

    @Excel(name = "支付方式",readConverterExp = "CASH=现金,POS_PAY=POS机支付,AGGREGATED_PAY=聚合支付,WECHAT_PAY=微信支付,ALIPAY_PAY=支付宝支付,TRANSFER=转账")
    private String payWay;

    @Excel(name = "结算状态",readConverterExp = "settled=已结算,pending_settlement=待结算,cancel_settlement=已撤销,settling=结算中")
    private String settleStatus;

    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @Excel(name = "结算时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss")
    private Date settleTime;

    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @Excel(name = "应收时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss")
    private Date receivableTime;


    @Excel(name = "结算操作人",width = 50)
    private String settleOperatorName;

    @Excel(name = "开票状态",readConverterExp = "NOT_INVOICED=未开票,INVOICING=开票中,INVOICED=开票完成,INVOICED_FAIL=开票失败,INVOICE_RED_DURING=冲红中,INVOICE_RED_SUCCESS=冲红成功,INVOICE_RED_FAIL=冲红失败")
    private String invoiceStatus;

    @Excel(name = "机场编码")
    private String airportCode;

    @Excel(name = "描述摘要")
    private String description;

}
